package com.ygqh.baby.model;

import com.ygqh.baby.ao.AppType;
import com.ygqh.baby.ao.OrderType;
import com.ygqh.baby.ao.PayType;
import com.ygqh.baby.ao.SalesPlatform;

import java.math.BigDecimal;
import java.util.List;

/**
 * 〈〉
 *
 * @author guohao
 * @date 2019/4/29 12:58
 * @since 1.0.0
 */
public class SaveMainOrderParam extends BaseEditRequest {

    private Long userId;

    private String userName;

    private Long addressId;

    private Long couponDetailId;

    private BigDecimal totalPrice;

    private BigDecimal accountPrice;

    private String identityNo;

    private SalesPlatform salesPlatform;

    private AppType appType;

    private PayType payType;

    private String formId;

    private String userRemark;

    private Long expressCardId;

    private OrderType orderType;

    private boolean distribution;

    private List<YgPtSkuInfo> skuList;

    private Long releationId;

    private Boolean reduceStockFlag = true;
    private Boolean delCar = true;
    /**
     * 这三个金额应该在 CarPromotionHandler 中实现
     * <p>
     * 现在使用原提交订单逻辑
     * TODO
     */

    private BigDecimal manjinPrice;
    private BigDecimal yhqPrice;
    private BigDecimal expressPrice;

    private Long productCouponCarId;

    public Boolean getDelCar() {
        return delCar;
    }

    public void setDelCar(Boolean delCar) {
        this.delCar = delCar;
    }

    public Long getProductCouponCarId() {
        return productCouponCarId;
    }

    public void setProductCouponCarId(Long productCouponCarId) {
        this.productCouponCarId = productCouponCarId;
    }

    public Boolean getReduceStockFlag() {
        return reduceStockFlag;
    }

    public void setReduceStockFlag(Boolean reduceStockFlag) {
        this.reduceStockFlag = reduceStockFlag;
    }

    public BigDecimal getManjinPrice() {
        return manjinPrice;
    }

    public void setManjinPrice(BigDecimal manjinPrice) {
        this.manjinPrice = manjinPrice;
    }

    public BigDecimal getYhqPrice() {
        return yhqPrice;
    }

    public void setYhqPrice(BigDecimal yhqPrice) {
        this.yhqPrice = yhqPrice;
    }

    public BigDecimal getExpressPrice() {
        return expressPrice;
    }

    public void setExpressPrice(BigDecimal expressPrice) {
        this.expressPrice = expressPrice;
    }

    public Long getReleationId() {
        return releationId;
    }

    public void setReleationId(Long releationId) {
        this.releationId = releationId;
    }

    public boolean isDistribution() {
        return distribution;
    }

    public void setDistribution(boolean distribution) {
        this.distribution = distribution;
    }

    public List<YgPtSkuInfo> getSkuList() {
        return skuList;
    }

    public void setSkuList(List<YgPtSkuInfo> skuList) {
        this.skuList = skuList;
    }

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public Long getAddressId() {
        return addressId;
    }

    public void setAddressId(Long addressId) {
        this.addressId = addressId;
    }

    public Long getCouponDetailId() {
        return couponDetailId;
    }

    public void setCouponDetailId(Long couponDetailId) {
        this.couponDetailId = couponDetailId;
    }

    public BigDecimal getTotalPrice() {
        return totalPrice;
    }

    public void setTotalPrice(BigDecimal totalPrice) {
        this.totalPrice = totalPrice;
    }

    public BigDecimal getAccountPrice() {
        return accountPrice;
    }

    public void setAccountPrice(BigDecimal accountPrice) {
        this.accountPrice = accountPrice;
    }

    public String getIdentityNo() {
        return identityNo;
    }

    public void setIdentityNo(String identityNo) {
        this.identityNo = identityNo;
    }

    public SalesPlatform getSalesPlatform() {
        return salesPlatform;
    }

    public void setSalesPlatform(SalesPlatform salesPlatform) {
        this.salesPlatform = salesPlatform;
    }

    public AppType getAppType() {
        return appType;
    }

    public void setAppType(AppType appType) {
        this.appType = appType;
    }

    public PayType getPayType() {
        return payType;
    }

    public void setPayType(PayType payType) {
        this.payType = payType;
    }

    public String getFormId() {
        return formId;
    }

    public void setFormId(String formId) {
        this.formId = formId;
    }

    public String getUserRemark() {
        return userRemark;
    }

    public void setUserRemark(String userRemark) {
        this.userRemark = userRemark;
    }

    public Long getExpressCardId() {
        return expressCardId;
    }

    public void setExpressCardId(Long expressCardId) {
        this.expressCardId = expressCardId;
    }

    public OrderType getOrderType() {
        return orderType;
    }

    public void setOrderType(OrderType orderType) {
        this.orderType = orderType;
    }
}

